package com.base.api.emr;

import com.base.vo.emr.*;

import java.util.List;

/**
 * 医嘱申请单维护服务
 */
public interface CpoeApplyService {

    /**
     * 查询所有的申请单分类
     * @return
     */
    String selectAllApplyItemClass();

    /**
     * 根据申请单分类返回对应的申请单列表
     * @param applyItemClass
     * @return
     */
    String selectApplyItemByExecOrgCodeAndCatalogId(CpoeApplyItemClass applyItemClass);

    /**
     * 根据申请单主键查询对应的诊疗项目
     * @param applyId
     * @return
     */
    String selectApplyInsp(Integer applyId);

    /**
     * 根据检验项目主键查询标本信息
     * @param inspId
     * @return
     */
    String selectApplyInspSampleByInspId(Integer inspId);

    /**
     * 修改检验申请单对照数据
     * @param dictApplyInspRelNew
     * @return
     */
    String uptApplyInspRelNew(CpoeDictApplyInspRelNew dictApplyInspRelNew);

    /**
     * 修改检验申请标本
     * @param inspecSample
     * @return
     */
    String uptApplyInspSample(CpoeBasicDictInspecSample inspecSample);

    /**
     * 查询检验标本字典
     * @return
     */
    String getAllSampleDetail();

    /**
     * 给检验项目添加检验标本
     * @param list
     * @return
     */
    String addSampleBatch(List<CpoeBasicDictInspecSample> list);

    /**
     * 删除检验项目标本
     * @param list
     * @return
     */
    String delSample(List<CpoeBasicDictInspecSample> list);

    /**
     * 添加申请单对应诊疗项目
     * @param list
     * @return
     */
    String addApplyItemInsp(List<CpoeDictApplyInspRelNew> list);

    /**
     * 删除申请单对应检验项目
     * @param dictApplyInspRelNew
     * @return
     */
    String delApplyItemInsp(CpoeDictApplyInspRelNew dictApplyInspRelNew);

    /**
     * 保存申请单
     * @param cpoeDictApplyNew
     * @return
     */
    String saveApplyItem(CpoeDictApplyNew cpoeDictApplyNew);

    /**
     * 删除申请单
     * @param applyId
     * @return
     */
    String delApplyItem(Integer applyId);

    /**
     * 分类绑定申请单
     * @param list
     * @return
     */
    String bindApplyItem(List<CpoeAppCaRelVst> list);

    /**
     * 获取所有申请单
     * @return
     */
    String getAllApplyItemDetail();
}
